
import 'package:json_annotation/json_annotation.dart';
import 'package:reabampos/src/reabam/operation/bean/base/rb_request.dart';
import 'package:reabampos/src/reabam/operation/bean/base/rb_response.dart';

//定义生成的文件 flutter pub run build_runner build --delete-conflicting-outputs
part 'Request_check_app_update.g.dart';

@JsonSerializable(explicitToJson: true)
class RequestCheckAppUpdate extends RBBaseRequest{

  String appCode;
  String version;

  RequestCheckAppUpdate(this.appCode, this.version):super();


  factory RequestCheckAppUpdate.fromJson(Map<String, dynamic> json) => _$RequestCheckAppUpdateFromJson(json);
  @override
  Map<String, dynamic> toJson() => _$RequestCheckAppUpdateToJson(this);

}



@JsonSerializable(explicitToJson: true)
class ResponseCheckAppUpdate extends RBBaseResponse{

  BeanUpdateAppVersionData? data;

  ResponseCheckAppUpdate({this.data}); //添加固定格式

  factory ResponseCheckAppUpdate.fromJson(Map<String, dynamic> json) => _$ResponseCheckAppUpdateFromJson(json);
  @override
  Map<String, dynamic> toJson() => _$ResponseCheckAppUpdateToJson(this);

}

@JsonSerializable(explicitToJson: true)
class BeanUpdateAppVersionData{

   bool? isLatestVersion;
   String? remark;
   BeanUpdateAppVersionInfo? info;


   BeanUpdateAppVersionData(
   {this.isLatestVersion, this.remark, this.info});

   //添加固定格式
  factory BeanUpdateAppVersionData.fromJson(Map<String, dynamic> json) => _$BeanUpdateAppVersionDataFromJson(json);
  Map<String, dynamic> toJson() => _$BeanUpdateAppVersionDataToJson(this);

}

@JsonSerializable(explicitToJson: true)
class BeanUpdateAppVersionInfo{


   dynamic id;
   String? planCode;
   String? planName;
   String? appCode;
   String? appName;
   dynamic version;
   String? updateMsg;
   String? description;
   String? downloadUrl;
   dynamic attachmentId;
   String? fileName;
   dynamic isPushMsg;
   dynamic updateType;
   dynamic isActive;
   dynamic status;
   String? statusName;
   dynamic publishType;
   String? remark;
   String? publishName;
   String? publishDate;
   String? modifyName;
   String? modifyDate;


   BeanUpdateAppVersionInfo(); //添加固定格式
  factory BeanUpdateAppVersionInfo.fromJson(Map<String, dynamic> json) => _$BeanUpdateAppVersionInfoFromJson(json);
  Map<String, dynamic> toJson() => _$BeanUpdateAppVersionInfoToJson(this);

}